1. Field of the Invention
The present invention relates to scanning ink-jet printers, and particularly to a print method and system providing improved print quality.
2. Statement of the Relevant Art
Ink jet printers commonly use a scanning printhead to deposit a pattern or matrix of dots as the printhead is scanned across a print medium (page). After the printhead is scanned across the page, the page is incrementally advanced in a direction orthogonal to the scanning axis to position the medium for a subsequent scan. If the dots are sufficiently small and closely spaced, the pattern is perceived by the human eye as if the dots formed a continuous image. Dots of the three subtractive primary colors, cyan, magenta (CMY), and yellow, may be combined to create the visual perception of a wide range of colors. The printed image is composed of a contiguous series of horizontal swaths, which taken together, create the overall image. Each swath is the height of the array of nozzles on the printhead. More than one scan of the printhead may be made for each swath, and the scans can be interleaved between swaths to smooth out boundaries between swaths. This process is referred to as "shingling" because it is reminiscent of the way shingles are laid down on a roof.
The printer is usually connected to a host computing device, such as a personal computer. The host typically has an a video monitor to allow the user to interface with the device. When a user is working with an image in the host, this image is usually stored in terms of a graphical computer language, which is independent of any particular printer or monitor resolution, and is usually stored in terms of additive red, green, blue (RGB) primary colors. The image thus stored must be converted to a format usable by the printer, i.e., at the resolution of the printer and in CMY format. This conversion is typically done by means of a "driver," which typically is a software package installed in the host to work with the user's computer application. The driver typically compresses the information and sends it to the printer controller in terms of escape sequences in one of various graphics languages, such as Hewlett-Packard Company's Printer Control Language (PCL .TM.) that describe the image and where it is placed on the page. Each sequence describes only a single dot row on the page. The driver can send these sequences in packets of various sizes, as little as a single dot row, or hundreds of dot rows at a time.
Once the printer controller receives the PCL sequences it composes them into page sectors of information that represents exactly which dots and of which color go on the page. These page sectors are a full page wide and may be only a few scans worth of information, or may be several vertical inches of the image. The page sectors do not necessarily correspond to the size of packets of PCL sequences the driver has sent the controller. After the controller composes these page sectors, the controller converts the sectors into passes for the printhead. In other words, once a page sector has been composed, the controller must then determine exactly how it will cause the printhead to make its scans back and forth across the page to deposit the dots according to the image sector information. In many cases, a multi-pass per swath print mode is used. If the image involves color, the printer must prepare pass information for each of the colors used.
The printer can typically begin printing the passes very quickly after the page sector information is ready. However, the page sector information may be delayed because of various factors. For example, the complexity of the image may cause delays in the driver. Additional delays may be encountered in the controller during composition of the page sectors. Also the input/output interfaces at both the host and/or the printer can cause delays. After all of the passes have been printed for which page sector information is ready, no additional passes can be printed until new page sector information is available. If no page sector information is ready in the controller, the printhead must remain idle until there is enough information for another pass.
When multi-pass shingled printing is used, a problem called "wait-banding" can result from these delays. When a series of primary color passes are made to print a particular secondary color, the actual color resulting on the page can vary depending on the time delay between when the first pass is made and the second pass is made. This difference is due in large part to the ink drops of the first pass drying in different degrees before the drops of the second pass are deposited. For example, assume a large area of blue is to be printed. Assume that in one swath a cyan pass is made and then time T1 goes before a magenta pass is made over the cyan. A given hue of blue will result. On a contiguous swath, a cyan pass is made, but then a different time T2 goes by before the magenta pass is made. In this case, a slightly different hue of blue will result. The two contiguous swaths of different blue colors will be perceived as undesirable wait-banding. Wait-banding is particularly a problem in darker colors, such as darker blues.
One approach to deal with this problem would be to establish a fixed delay between each print pass, with the hope that by the time the passes are complete, the printer will have more page sector information available for printing. This approach, however, would disadvantageously increase the overall time needed to print any given page, even though page sector information is ready in advance of when the passes are made. In other words, the throughput of the printer would be unnecessarily decreased. Throughput is an important issue in the highly competitive ink-jet printer market.
There remains a need for a printing method and system that minimizes wait-banding without also unnecessarily decreasing the throughput of the printer.